"""
数据输出

take 算子
==============================================================================================
计算 RDD 有多少条数据，返回一个数字

- 语法：rdd.collect()

==============================================================================================
"""

# 演示RDD的flatMap成员方法的使用
from pyspark import SparkConf, SparkContext

# windows 中 spark 找不到对于的 python 解释器会报错
import os

os.environ["PYSPARK_PYTHON"] = "D:/python3.11/python.exe"
# os.environ["HADOOP_HOME"] = "/Users/zhoushiyang/Documents/hadoop-3.3.6"
os.environ["HADOOP_HOME"] = "D:/hadoop-3.3.6"

conf = (
    SparkConf()
    .setMaster("local[*]")
    .setAppName("test_spark")
    # 修改rdd分区为1个
    .set("spark.default.parallelism", "1")
)
sc = SparkContext(conf=conf)

# collect原子：输出RDD为list对象
rdd_list = sc.parallelize({1, 2, 3, 4, 5})
rdd_list.saveAsTextFile("test")

sc.stop()
